package com.example.demo.service;

import com.example.demo.entity.ShippingAddress;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
* @author 15085202591
* @description 针对表【shipping_address】的数据库操作Service
* @createDate 2024-05-29 15:32:26
*/
public interface ShippingAddressService extends IService<ShippingAddress> {

    /**
     * 根据用户id拿到其所有收货地址
     * @param id 用户id
     * @return 收货地址集合
     */
    List<ShippingAddress> selectAllAddressByUid(Long id);

    /**
     * 用户增加收货地址
     * @param address 收货地址对象
     */
    void addShippingAddress(ShippingAddress address);

    /**
     * 修改收货地址
     * @param address 收货地址对象
     */
    void modifyShippingAddress(ShippingAddress address);


    /**
     * 根据地址id查询一条收货地址
     * @param id 地址id
     */
    ShippingAddress selectAddressById(Long id);


    /**
     * 根据id删除一条收货地址
     * @param id 地址id
     */
    void deleteAddressById(Long id);

    void updateSelectedById(Long id, Long uid);

    Long getIDBySelected(Long uid);
}
